Many computing devices interact with one or more media devices, often using one or more streaming media drivers (“SMDs”). Oftentimes, these SMDs utilize memory buffers for actions such as media capture, decoding, processing, and display. In some systems, for security purposes, SMD buffers may be aware of and able to directly access physical memory. However, SMDs may need large blocks of contiguous addresses for easier streaming and security purposes. In some such systems, this physical memory may end up being allocated prior to OS boot as a single large block, from which individual SMDs buffers can be cut out as needed during operation of the device. Use of this technique may result, however, in large pieces of memory being wasted, since it may not be known at boot time how much memory will or will not be used.